+=++++++++++++++++++++++++++++++++++=====++++++==-=-:::-: .:=++++=++*
====================----=---===---------==+++===-:+-.-=..:++:==++===*
------------=================----:::::----==+=-:+**=+#-:=*=.-=-==++*#
--::::::---====++++++===++++==++++++++++++#*+--+*####*=+*#=-+==++###%
+==-==++++*****##############**********************#***###+*+*+*#####
######***##################*********##***********************+*+*+++*
####**###%%%#%##%%#######***********##****************+**+++++++++++*
##***################**************###*#**************************+**
###%%#%%##########*##**************#####**#*************************#
#*******#**********#*************+*#######**#***********************#
##%%##%%####******##***********#*+#*#********############***********#
%#######***********************#**###******##########################
#***###****************##*******#**#*********########****############
####******************###***#*******#***********#####*******###*****#
#*****###***********#*****##*******#*****####****############*******#
*****#***************######********#****+**************#############%
#*******************######**********####****************************#
#*******************##########*******###****++**###########*********#
*******************###########********#*********##******###*********#
*****************#########************##*****##*+*******************#
*****************########**************###*******+++****************#
****************##########**************###********+++**************#
%############%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%###*############%%